package com.demo.security.access.model;

import java.util.Date;

/**
 * 安全用户模型
 * 针对用户安全所需要的认证信息
 * 该接口与具体实现模型分离
 * 方便各包之间的独立性
 * @author ryuu.kk
 *
 */
public interface SecurityUser extends java.io.Serializable {
	
	/**
	 * 用户ID
	 * @return
	 */
	public Long getId();
	
	/**
	 * 用户名
	 * @return
	 */
	public String getUserName();

	/**
	 * 用户密码
	 * @return
	 */
	public String getPassword();

	/**
	 * 盐值
	 * @return
	 */
	public String getSalt();

	/**
	 * 有效期限日
	 * @return Date
	 */
	public Date getExpireDay();

	/**
	 * 角色是否可用
	 * @return Boolean
	 */
	public Boolean getEnabled();

	/**
	 * 角色是否锁定
	 * @return Boolean
	 */
	public Boolean getLocked();

	/**
	 * 角色是否有效
	 * @return Boolean
	 */
	public Boolean getIsValid();
}
